An executable program, such as a dataflow graph, may include one or more parameters that configure aspects of the execution of the program. For example, a program that reads a data file may include a parameter for which a value may be supplied to indicate a location where the data file is stored. Before the program is executed, a value for the parameter may be supplied such that a specified location is accessed to read the data file. The same program may be executed again while reading a different data file by a user supplying a different value of the parameter when executing the program a second time.
Some executable programs may be written to generically specify a task and then configured by “parameterizing” to perform the task for a given scenario. “Parameterizing” the program entails supplying values for parameters to the program that correspond to the scenario. Such a program is sometimes referred to as a “generic program.” For example, a generic program for sorting a data file may be parameterized by an input file location, an output file location, a record format for the data and a sort key. By supplying suitable values for these parameters, the generic program may be executed in any instance in which sorting data and saving the results to a file is desired.
A generic program may be parameterized by use of a user interface that allows a user to specify appropriate values for parameters of the generic program. In some cases, a user who parameterizes the generic program may be different from a user who writes the generic program. For example, the creation of a generic program may require a higher level of technical skill than selection of parameters to execute the generic program.